package cn.iocoder.yudao.module.exam.dal.dataobject.studentpaper;

import lombok.*;
import java.util.*;
import java.math.BigDecimal;
import java.math.BigDecimal;
import java.math.BigDecimal;
import java.time.LocalDateTime;
import java.math.BigDecimal;
import java.time.LocalDateTime;
import java.time.LocalDateTime;
import com.baomidou.mybatisplus.annotation.*;
import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO;

/**
 * 试卷管理 DO
 *
 * @author Francis
 */
@TableName("exam_student_paper")
@KeySequence("exam_student_paper_seq") // 用于 Oracle、PostgreSQL、Kingbase、DB2、H2 数据库的主键自增。如果是 MySQL 等数据库，可不写。
@Data
@EqualsAndHashCode(callSuper = true)
@ToString(callSuper = true)
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class StudentPaperDO extends BaseDO {

    /**
     * 试卷ID
     */
    @TableId
    private Long id;
    /**
     * 编号
     */
    private String paperCode;
    /**
     * 考试ID
     */
    private Long examId;
    /**
     * 批次ID
     */
    private Long batchId;
    /**
     * 学生ID
     */
    private Long studentId;
    /**
     * 学生姓名
     */
    private String studentName;
    /**
     * 学号
     */
    private String studentNo;
    /**
     * 考号
     */
    private String examNo;
    /**
     * 班级
     */
    private String className;
    /**
     * 试卷扫描件路径
     */
    private String paperImageUrl;
    /**
     * OCR识别状态
     */
    private Integer ocrStatus;
    /**
     * 批阅状态
     */
    private Integer markingStatus;
    /**
     * 总得分
     */
    private BigDecimal totalScore;
    /**
     * 客观题得分
     */
    private BigDecimal objectiveScore;
    /**
     * 主观题得分
     */
    private BigDecimal subjectiveScore;
    /**
     * 班级排名
     */
    private Integer classRank;
    /**
     * 年级排名
     */
    private Integer gradeRank;
    /**
     * 是否发布(0:否,1:是)
     */
    private Integer isPublished;
    /**
     * 发布时间
     */
    private LocalDateTime publishedTime;
    /**
     * AI识别置信度
     */
    private BigDecimal aiConfidence;
    /**
     * 是否需要人工复核(0:否,1:是)
     */
    private Integer manualReview;


}